# 1、从键盘接收一个正整数n，如果n是偶数,n除以2，如果n是奇数，则n=n+1.请问n经过多少次操作，
# 可以变成1
# count= []
# n = int(input("请输入一个正整数:"))
# while n != 1:
#     if n % 2 == 0:
#         n = n / 2
#     else:
#         n = n + 1
#     count.append(n)
# print(count)
# print(f"经过{len(count)}次操作，可以变成1")


# 2、有一群猪(100-200之间)，如果分成4个猪一组，则多2个猪；若分成7个猪一组则多3个猪；若分成9
#    个猪一组，则多5个猪，试求出猪的总数
# for a in range(100,201,1):
#    if a%4==2 and a%7==3 and a%9==5:
#        print(a)

# 3、假设一个游戏人物的体力值是3血，吃个桃加1血，刀减一血，剑减两血 经过这个数组
# ["桃","桃","刀","桃","桃","剑"]之后，输出体力值是多少？
list=["桃","桃","刀","桃","桃","剑"]
# a=3
# for index in range(len(list)):
#         if list[index]=="桃":
#             a+=1
#         elif list[index]=="刀":
#             a-=1
#         else:
#             a-=2
# print(a)

# 4、定义数组 arr = [2,6,8,9,10]从键盘接收n,求前n个元素的和 n肯定小于等于数组的长度。
# 比如n=3时，求2、6、8的和。
# arr = [2,6,8,9,10]
# n = int(input("请输入一个正整数:"))
# sum=0
# if n<=len(arr):
#     for index in range(n):
#         sum+=arr[index]
# else:
#     print("错误")
# print(sum)
#
# arr = [2,6,8,9,10]
# n = int(input('请输入n的值：'))
# count = 0
# if n <= len(arr):
#     for i in range(len(arr)):
#         count += arr[i]
#         if i == n-1:
#             print(count)
#             break
# else:
#     print('错误')
# 5、从键盘输入10个数，将第2个与第6个交换，第4个与第8个交换，
# 输出原来的10个数，以及交换后的10个数
# 拆包与解包
# 拆包：等号左边变量的个数要跟右边容器元素的个数一致
# 解包：将容器中所有元素全部取出  语法*容器名
# 用途：函数
#输入10个数操作
# for i in range(10):
#     num = int(input(f"请输入第{i+1}个数: "))
#     numbers.append(num)
# # 方法1
# numbers = [1,2,3,4,5,6,7,8,9,10]
# print(numbers)
# a, b, c, d, e, f, g, h, i, j = numbers
# b,f=f,b
# new_numbers = [a, b, c, d, e, f, g, h, i, j]
# print("交换后的10个数:", *new_numbers)
# # 方法2
# numbers = [1,2,3,4,5,6,7,8,9,10]
# print(numbers)
# num=numbers[1]
# nun = numbers[4]
# numbers[1] = numbers[5]
# numbers[5] = num
# numbers[4] = numbers[8]
# numbers[8] = nun
# print("交换后的10个数:",*numbers)
# # 方法3
# numbers = [1,2,3,4,5,6,7,8,9,10]
# print(numbers)
# numbers[1], numbers[5] = numbers[5], numbers[1]  # 第2个与第6个交换
# numbers[3], numbers[7] = numbers[7], numbers[3]  # 第4个与第8个交换
# print("交换后的10个数:", *numbers)
# 6、打印数组中，最中间的数。比如数组有5个元素，打印第3个元素。比如数组有6个元素，打印第3个和第4个元素
# #奇数
# list6 = [10, 20, 30, 40, 50]
# len1 = len(list6)
# if len1 % 2 == 1:
#     zj= len1 // 2
#     print("中间元素：", list6[zj])
# #偶数
# list7 = [100, 200, 300, 400, 500, 600]
# len2 = len(list7)
# if len2 % 2 == 0:
#     zj1 = (len2 // 2) - 1
#     zj2 = len2 // 2
#     print("中间元素：", list7[zj1], "和", list7[zj2])

